// -----------------------------------------------------------------------------
// Generate By Furion Tools v1.6.0                            
// -----------------------------------------------------------------------------

using Furion.DatabaseAccessor;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Metadata.Builders;
using System;
using System.Collections.Generic;

#nullable disable

namespace iemtm.WeChat.Core
{
    public partial class Collector561 : IEntity<MasterDbContextLocator>, IEntityTypeBuilder<Collector561, MasterDbContextLocator>
    {

        public string DTUID { get; set; }
        public string dtuAlias { get; set; }
        public string dtuCode { get; set; }
        public string DevStyle { get; set; }
        public int? WorkVoltage { get; set; }
        public int? Status { get; set; }
        public bool? BMoving { get; set; }
        public double? Speed { get; set; }
        public int? Distance2Bs { get; set; }
        public bool? BIsOutside { get; set; }
        public int? OutsideDistance { get; set; }
        public string MaintCompanyCode { get; set; }
        public string MaintCompanyName { get; set; }
        public string MaintCompanyArea { get; set; }
        public string DevAddress { get; set; }
        public string CurDevServer { get; set; }
        public string DestDevServer { get; set; }
        public string AlarmPhone1 { get; set; }
        public string AlarmPhone2 { get; set; }
        public string AlarmPhone3 { get; set; }
        public string AlarmPhone4 { get; set; }
        public string AlarmPhone5 { get; set; }
        public string Address { get; set; }
        public DateTime? InUseTime { get; set; }
        public int? AreaId { get; set; }
        public string AreaCode { get; set; }
        public string AreaName { get; set; }
        public string CompanyCode { get; set; }
        public string CompanyName { get; set; }
        public string PrjCode { get; set; }
        public string PrjName { get; set; }
        public string GPS { get; set; }
        public double? BDLocLat { get; set; }
        public double? BDLocLgt { get; set; }
        public double? GPSLocLat { get; set; }
        public double? GPSLocLgt { get; set; }
        public DateTime? GPSLocTime { get; set; }
        public int? GPSLocType { get; set; }
        public bool? bGpsLoc { get; set; }
        public DateTime? ltOnTime { get; set; }
        public DateTime? ltOffTime { get; set; }
        public string lastSaveWJ { get; set; }
        public DateTime? LastCheckDt { get; set; }
        public string Alarms { get; set; }
        public string BaseStationCode { get; set; }
        public string BaseStationName { get; set; }
        public string BaseStationAddr { get; set; }
        public short? CSQ { get; set; }
        public DateTime? DATECLOCK { get; set; }
        public int? SWVER { get; set; }
        public bool? BBuff2DB { get; set; }
        public int? BaseStationID { get; set; }
        public double? SafetyLat { get; set; }
        public double? Safetylgt { get; set; }
        public bool? BOnline { get; set; }
        public string MQTTCLIENTID { get; set; }
        public string BaseStationTTCode { get; set; }
    
        public void Configure(EntityTypeBuilder<Collector561> entityBuilder, DbContext dbContext, Type dbContextLocator)
        {
                entityBuilder.HasKey(e => e.DTUID)
                    .HasName("PK__Collecto__FCCB400D678B361C");

                entityBuilder.Property(e => e.DTUID).HasMaxLength(50);

                entityBuilder.Property(e => e.Address).HasMaxLength(200);

                entityBuilder.Property(e => e.AlarmPhone1).HasMaxLength(50);

                entityBuilder.Property(e => e.AlarmPhone2).HasMaxLength(50);

                entityBuilder.Property(e => e.AlarmPhone3).HasMaxLength(50);

                entityBuilder.Property(e => e.AlarmPhone4).HasMaxLength(50);

                entityBuilder.Property(e => e.AlarmPhone5).HasMaxLength(50);

                entityBuilder.Property(e => e.AreaCode).HasMaxLength(50);

                entityBuilder.Property(e => e.AreaName).HasMaxLength(50);

                entityBuilder.Property(e => e.BaseStationAddr).HasMaxLength(300);

                entityBuilder.Property(e => e.BaseStationCode).HasMaxLength(50);

                entityBuilder.Property(e => e.BaseStationName).HasMaxLength(300);

                entityBuilder.Property(e => e.BaseStationTTCode).HasMaxLength(50);

                entityBuilder.Property(e => e.CompanyCode).HasMaxLength(50);

                entityBuilder.Property(e => e.CompanyName).HasMaxLength(200);

                entityBuilder.Property(e => e.CurDevServer).HasMaxLength(50);

                entityBuilder.Property(e => e.DATECLOCK).HasColumnType("datetime");

                entityBuilder.Property(e => e.DestDevServer).HasMaxLength(50);

                entityBuilder.Property(e => e.DevAddress).HasMaxLength(200);

                entityBuilder.Property(e => e.DevStyle).HasMaxLength(20);

                entityBuilder.Property(e => e.GPS).HasMaxLength(100);

                entityBuilder.Property(e => e.GPSLocTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.InUseTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.LastCheckDt).HasColumnType("datetime");

                entityBuilder.Property(e => e.MQTTCLIENTID).HasMaxLength(50);

                entityBuilder.Property(e => e.MaintCompanyArea).HasMaxLength(200);

                entityBuilder.Property(e => e.MaintCompanyCode).HasMaxLength(50);

                entityBuilder.Property(e => e.MaintCompanyName).HasMaxLength(50);

                entityBuilder.Property(e => e.PrjCode).HasMaxLength(50);

                entityBuilder.Property(e => e.PrjName).HasMaxLength(100);

                entityBuilder.Property(e => e.dtuAlias).HasMaxLength(50);

                entityBuilder.Property(e => e.dtuCode).HasMaxLength(50);

                entityBuilder.Property(e => e.lastSaveWJ).HasMaxLength(100);

                entityBuilder.Property(e => e.ltOffTime).HasColumnType("datetime");

                entityBuilder.Property(e => e.ltOnTime).HasColumnType("datetime");
        }

    }
}

